﻿using System;

namespace AspNetCs.Config
{
	/// <summary>
	/// 基本设置描述类, 加[Serializable]标记为可序列化
	/// </summary>
	[Serializable]
	public class BaseConfigInfo : IConfigInfo
    {
        #region 私有字段

		private string _siteInstaDir = "/";			// 本系统在站点内的路径
        private string _dbtype = "SQL";  //数据库类型
        private string _dbConnectstring = "Data Source=.; Database=999qm; Uid=sa;pwd=123;";		// 数据库连接串-格式(中文为用户修改的内容)：Data Source=数据库服务器地址;User ID=您的数据库用户名;Password=您的数据库用户密码;Initial Catalog=数据库名称;Pooling=true
		private string _tableprefix = "";		// 数据库中表的前缀
        private string _cachePre = "My_";	//缓存前缀
        private bool _customException = true; //启用异常自定义处理
        
        #endregion

        #region 属性

        /// <summary>
        /// 本系统在站点内的路径
		/// </summary>
		public string SiteInstaDir
		{
			get { return _siteInstaDir;}
			set { _siteInstaDir = value;}
		}

        /// <summary>
        /// 数据库类型
        /// SQL数据库 value="SQL"
        /// Access数据库 value="Access"
        /// 说明：如果使用ACCESS数据库，则value="ACCESS";如果使用SQL数据库,则value="SQL",并且须修改下面DbConnectstring数据库连接字符串的值.
        /// </summary>
        public string DbType 
        {
            get { return _dbtype; } 
            set { _dbtype = value; }
        }



        /// <summary>
        /// 数据库连接字符串
        /// 格式(中文为用户修改的内容)：
        ///    Data Source=数据库服务器地址;
        ///    User ID=您的数据库用户名;
        ///    Password=您的数据库用户密码;
        ///    Initial Catalog=数据库名称;Pooling=true
        /// </summary>
        public string DbConnectstring
        {
            get { return _dbConnectstring; }
            set { _dbConnectstring = value; }
        }


        /// <summary>
        /// 数据库中表的前缀
        /// </summary>
        public string TablePrefix
        {
            get { return _tableprefix; }
            set { _tableprefix = value; }
        }

        /// <summary>
        /// 缓存前缀
        /// </summary>
        public string CachePrefix
        {
            get { return _cachePre; }
            set { _cachePre = value; }
        }

        /// <summary>
        /// 启用异常自定义处理
        /// </summary>
        public bool CustomException
        {
            get { return _customException; ; }
            set { _customException = value; }
        }

        #endregion
    }
}
